perm filename SYSTEM.CNV[C,JRA] blob
sn#018738 filedate 1973-01-05 generic text, type T, neo UTF8
00100 (DEFPROP CERR T *FSUBR)
00200 (SPECIAL $N LIST1)
00300 (DEFPROP *SQ T *FSUBR)
00400 (DEFPROP APPLY# T *LSUBR)
00500 (DEFPROP DATA-INIT T *LSUBR)
00100 (SETQ DEBUGLOOP NIL)
00200
00300 (*RSET T)
00600
00700 (PUTPROP 'DIFFERENCE (GET '*DIF 'SUBR) 'SUBR)
00800
00900 (PUTPROP 'SASSQ (GET 'SASSOC 'SUBR) 'SUBR)
01000
01100 (PUTPROP 'MAPC# (GET 'MAPC 'SUBR) 'SUBR)
01200
01300 (PUTPROP 'MAPCAR# (GET 'MAPCAR 'SUBR) 'SUBR)
01400
01500 (PUTPROP 'ASSQ (GET 'ASSOC 'SUBR) 'SUBR)
01600
01700 (PUTPROP 'APPLY# (GET 'APPLY 'LSUBR) 'LSUBR)
01800
01900
02000
02100 (SETQ PURE NIL)
02200
02300 (SETQ ERRLIST NIL)
02400 (SETQ EAR 0)
02500 (SETQ FRAMEVARS NIL)
02600 (SETQ CINTERRUPT NIL)
02700 (SETQ EXP NIL)
02800 (SETQ ALINK NIL)
02900 (SETQ FRAME* NIL)
03000 (SETQ BVARS NIL)
03100 (SETQ CLINK NIL)
03200 (SETQ *ITEMS NIL)
03300 (SETQ NUMACT 0.)
03400
03500 (DF PAGEBPORG (L) 'PAGEBPORG)
03600
03700 (DF GENPREFIX (L) 'GENPREFIX)
03800
00100 (DF DO (L)
00200 (PROG ($X $XI $XS $ET $BD)
00300 (*SQ $X (CAR L))
00400 (*SQ $XI (CADR L))
00500 (*SQ $XS (CADDR L))
00600 (*SQ $ET (CADDDR L))
00700 (*SQ $BD (CDDDDR L))
00800 START
00900 (SET $X (EVAL $XI))
01000 DOLOOP
01100 (COND ((EVAL $ET)(RETURN NIL)))
01200 (MAPC 'EVAL $BD)
01300 (SET $X (EVAL $XS))
01400 (GO DOLOOP) ))
01500
01600
00100 (PUTPROP 'LIST# (GET 'LIST 'FSUBR) 'FSUBR)
00200
00300 (DEFPROP LIST
00400 (LAMBDA $N
00500 ((LABEL LIST1 (LAMBDA ($X)
00600 (COND ((EQUAL $X (ADD1 $N)) NIL)
00700 (T (CONS (ARG $X)(LIST1 (ADD1 $X)))))))
00800 1))
00900 EXPR)
01000
01100 (REMPROP 'LIST 'FSUBR)
01200
01300 (DE ASSOC ($A $L)
01400 (COND ((NULL $L) NIL)
01500 ((EQUAL $A (CAAR $L))(CAR $L))
01600 (T (ASSOC $A (CDR $L)))))
01700
01800 (DEFPROP MIN (LAMBDA $N
01900 (PROG ($V)
02000 (SETQ $V (ARG $N))
02100 A (SETQ $N (SUB1 $N))
02200 (COND ((ZEROP $N)(RETURN $V))
02300 ((LESSP (ARG $N) $V) (SETQ $V (ARG $N))))
02400 (GO A)))EXPR)
02500
02600 (DEFPROP MAX (LAMBDA $N
02700 (PROG ($V)
02800 (SETQ $V (ARG $N))
02900 A (SETQ $N (SUB1 $N))
03000 (COND ((ZEROP $N)(RETURN $V))
03100 ((GREATERP (ARG $N) $V)(SETQ $V (ARG $N))))
03200 (GO A)))EXPR)
03300
03400 (DEFPROP MEMQ (LAMBDA ($E $L)
03500 (COND ((NULL $L) NIL)
03600 ((NOT (ATOM (CAR $L)))(MEMQ $E (CDR $L)))
03700 ((EQ $E (CAR $L)) $L)
03800 (T (MEMQ $E (CDR $L)))))EXPR)
03900
04000 (DEFPROP MEMBER (LAMBDA ($E $L)
04100 (COND ((NULL $L) NIL)
04200 ((EQUAL $E (CAR $L)) $L)
04300 (T (MEMBER $E (CDR $L)))))EXPR)
04400
04500 (DEFPROP RANDOM (LAMBDA ()
04600 (QUOTIENT (TIMES (EXAMINE 15)(EXAMINE 16) ) (MAX (EXAMINE 15)(EXAMINE 16)))
04700 )EXPR)
04800
04900
00100 (DEFPROP AND (LAMBDA ($L)
00200 (AND# (CDR $L))) MACRO)
00300
00400 (DEFPROP AND# (LAMBDA ($L)
00500 (COND ((NULL (CDR $L))(LIST (QUOTE COND)(LIST (CAR $L))))
00600 (T (LIST (QUOTE COND)(LIST (CAR $L)(AND# (CDR $L)))))))EXPR)
00700
00800 (DEFPROP OR (LAMBDA ($L)
00900 (OR# (CDR $L)))
01000 MACRO)
01100
01200 (DEFPROP OR# (LAMBDA ($L)
01300 (APPEND (QUOTE (COND))(MAPCAR (FUNCTION LIST) $L)))
01400 EXPR)
01500
01600 (PUTPROP 'AND '(LAMBDA ($L)
01700 (AND# (CDR $L))) 'MACRO)
01800
01900 (PUTPROP 'OR '(LAMBDA ($L)
02000 (OR# (CDR $L)))
02100 'MACRO)
02200
02300 (DEFPROP MAPCAR (LAMBDA $L
02400 (COND ((GREATERP $L 3)(PRINT '(MAPCAR OF 3 ARG LISTS))(ERR))
02500 ((EQUAL $L 2)(MAPCAR# (ARG 1)(ARG 2)))
02600 (T (COND ((OR (NULL (ARG 2))(NULL (ARG 3)))NIL)
02700 (T (CONS ((ARG 1)(CAR (ARG 2))(CAR (ARG 3)))
02800 (MAPCAR (ARG 1)(CDR (ARG 2))(CDR (ARG 3)))))))))EXPR)
02900
03000 (DEFPROP MAPC (LAMBDA $L
03100 (COND ((GREATERP $L 4)(PRINT '(MAPC OF FOUR ARG LISTS))(ERR))
03200 ((EQUAL $L 2)(MAPC# (ARG 1)(ARG 2)) (ARG 2) )
03300 ((EQUAL $L 3)
03400 (PROG ($A $B)
03500 (SETQ $A (ARG 2))(SETQ $B (ARG 3))
03600 L1 (AND (OR (NULL $A)(NULL $B))(RETURN (ARG 2)) )
03700 ((ARG 1)(CAR $A)(CAR $B))
03800 (SETQ $A (CDR $A))(SETQ $B (CDR $B))
03900 (GO L1 )))
04000 (T (PROG ($A $B $C) (SETQ $A (ARG 2))(SETQ $B (ARG 3))(SETQ $C(ARG 4))
04100 L1 (AND (OR (NULL $A)(NULL $B)(NULL $C))(RETURN (ARG 2)))
04200 ((ARG 1)(CAR $A)(CAR $B)(CAR $C))
04300 (SETQ $A(CDR $A))(SETQ $B (CDR $B))(SETQ $C(CDR $C))
04400 (GO L1)))))EXPR)
04500
04600 (DECLARE (SPECIAL $R $F $L))
04700
04800 (DEFPROP MAPCAN
04900 (LAMBDA($F $L)
05000 (PROG ($R)
05100 (MAPC(FUNCTION (LAMBDA($X)(SETQ $R(NCONC $R ($F $X)))))$L)
05200 (RETURN $R)))
05300 EXPR)
05400
05500 (DECLARE (UNSPECIAL $R $F $L))
05600
05700
05800
05900 (DEFPROP APPLY
06000 (LAMBDA $L
06100 (COND ((GETL (ARG 1) (QUOTE (EXPR LSUBR SUBR)))
06200 (APPLY# (ARG 1)(ARG 2)))
06300 ((EVAL (CONS (ARG 1)(ARG 2))))))
06400 EXPR)
06500
06600 (DM PP ($L) (LIST 'GRINDEF (EVAL (CADR $L))))
06700
00100
00200
00300 (PUTPROP '/= (GET 'EQUAL 'SUBR) 'SUBR)
00400 (PUTPROP '/< (GET '*LESS 'SUBR) 'SUBR)
00500 (PUTPROP '/> (GET '*GREAT 'SUBR) 'SUBR)
00600 (PUTPROP '/+ (GET '*PLUS 'SUBR) 'SUBR)
00700 (PUTPROP '/- (GET '*DIF 'SUBR) 'SUBR)
00800 (PUTPROP '// (GET '*QUO 'SUBR) 'SUBR)
00900 (PUTPROP '/* (GET 'TIMES 'SUBR) 'SUBR)
01000
01100 (PUTPROP '/1+ (GET 'ADD1 'SUBR) 'SUBR)
01200 (PUTPROP '/1- (GET 'SUB1 'SUBR) 'SUBR)
01300
01400 (DF MAKREADTABLE (L) (APPEND '(MAKREADTABLE) L))
01500 (DF SSTATUS (L) (APPEND '(SSTATUS) L))
01600
01700 (DE BOUNDP (L) (GET L 'VALUE))
01800
01900 (PUTPROP '*SQ (GET 'SETQ 'FSUBR) 'FSUBR)
02000
02050 (SPECIAL $#%X $#%L)
02100 (DF SETQ ($#%L)
02200 (PROG ($#%X)
02300 A (COND ((NULL $#%L)(RETURN $#%X)))
02400 (*SQ $#%X (SET (CAR $#%L)(EVAL (CADR $#%L)) ))
02500 (*SQ $#%L (CDDR $#%L))
02600 (GO A)))
02650 (UNSPECIAL $#%X $#%L)
02700
02800 (PUTPROP '*GT (GET 'GET 'SUBR) 'SUBR)
02900 (DE GET ($X $I)(COND ((NUMBERP $X)NIL)(T(*GT $X $I))))
03000
00100
00200
00300 (DEFPROP CATCH
00400 (LAMBDA(L)
00500 (PROG (Z)
00600 (SETQ Z (EVAL (LIST (QUOTE ERRSET) (CAR L) T)))
00700 (COND
00750 ((EQ Z (QUOTE $EOF$))(PRINT (QUOTE END_OF_FILE))(RETURN T))
00775 ((ATOM Z) (RETURN (CERR YOU HAVE BEEN BITTEN BY LISP))) (T (RETURN (CAR Z))))))
00800 FEXPR)
00900
01000 (DEFPROP THROW
01100 (LAMBDA (L) (ERR L))
01200 EXPR)
00100
00200 (DEFPROP DELETE (LAMBDA %N (PROG( %NN %X %Y)
00300 (SETQ %NN(COND((EQ %N 3)(ARG 3))(T -1)))
00400 (SETQ %X(ARG 1))(SETQ %Y(ARG 2))
00500 A(COND((OR(ZEROP %NN)(NULL (CDR %Y)))(RETURN(ARG 2)))
00600 ((EQUAL %X (CADR %Y))(RPLACD %Y(CDDR %Y))(SETQ %NN(SUB1 %NN))(GO A))
00700 )(SETQ %Y(CDR %Y)) (GO A) ))
00800 EXPR)
00100 (DEFPROP DELQ (LAMBDA %N(PROG (%NN %X %Y)
00200 (SETQ %NN(COND((EQ %N 3)(ARG 3))(T -1)))
00300 (SETQ %X(ARG 1))(SETQ %Y(ARG 2))
00400 A(COND((OR(ZEROP %NN)(NULL (CDR %Y)))(RETURN(ARG 2)))
00500 ((EQ %X (CADR %Y))(RPLACD %Y(CDDR %Y))(SETQ %NN(SUB1 %NN))(GO A))
00600 )(SETQ %Y(CDR %Y)) (GO A) ))
00650 EXPR)
00700 (DE CONIVINIT()(PROG NIL(INITFN 'CRESTART)(CONIVE)(DATA-INIT)(START)))
00750 (DE CRESTART()(PROG NIL(SETQ RUNF NIL)(START)))
00800